import axios from 'axios'
import qs from 'qs'
import { getToken } from '@/utils'
import { Toast } from 'antd-mobile'
import { createBrowserHistory } from 'umi'
const history = createBrowserHistory()
const request = axios.create({
  baseURL: process.env.NODE_ENV === 'development'? '/conner': '生成环境源',
  timeout: 8000
})
// 添加拦截器

request.interceptors.request.use(function (config) {
  if (getToken()) {
    // 请求参数中添加token  实际开发都是在请求头中
    if (config.method === 'get') {
      config.params.token = getToken();
    }
    if (config.method === 'post') {
      config.data.token = getToken();
    }
  }
  if(config.method === 'post' && config.data) {
    config.data = qs.stringify(config.data)
  }
  return config;
}, function (error) {
  return Promise.reject(error);
});

request.interceptors.response.use(function (res) {
  if (res.data.code === 2000) {
    // 登录状态过期或者未登录
    Toast.show({
      icon: 'fail',
      content: '登录状态过期或未登录',
      afterClose: () => {
        // 清除登录相关缓存
        /* history.push('/login')
        history.go(0) */
      }
    })
  }
  return res;
}, function (error) {
  return Promise.reject(error);
})
export default request